home *** CD-ROM | disk | FTP | other *** search
/ SGI Hot Mix 17 / Hot Mix 17.iso / HM17_SGI / research / bin / gen_odbc_ini < prev    next >
Encoding:
Text File  |  1997-07-08  |  5.8 KB  |  264 lines

  1. #!/bin/sh
  2. # This script generates the odbc.ini file for the platform supporting
  3. # odbc. This is used as part of the IDL install process.
  4. #
  5. #
  6. # $Id: gen_odbc_ini,v 1.9 1997/04/08 18:13:20 kirk Exp $
  7.  
  8. # Parameter 1 is $IDL_DIR
  9. if [ "$1" != "" ]; then
  10. IDL_DIR=$1
  11. else
  12. exit 1
  13. fi
  14.  
  15. # Parameter 2 is OS_NAME
  16. if [ "$2" = "" ]; then
  17. exit 1
  18. else
  19.   case $2 in
  20.       "SGI")
  21.        OS_NAME=sgi
  22.        INFORMIX_FILE="vsifmx7.so.1"
  23.        MSSQL_FILE="vsmssql.so.1"
  24.        ORACLE_FILE="vsorac.so.1"
  25.        SYBASE_FILE="vssyb.so.1"
  26.       ;;
  27.  
  28.       "HP")
  29.        OS_NAME=hp
  30.        INFORMIX_FILE="vkifmx7.sl"
  31.        INGRES_FILE="vkingr64.sl"
  32.        MSSQL_FILE="vkmssql.sl"
  33.        ORACLE_FILE="vkorac.sl"
  34.        SYBASE_FILE="vksyb.sl"
  35.        SYDB_FILE="vsss.sl"
  36.       ;;
  37.  
  38.       "SOLARIS2")
  39.        OS_NAME=solaris2.sparc
  40.        INFORMIX_FILE="vkifmx7.so.1"
  41.        INGRES_FILE="vkingr64.so.1"
  42.        MSSQL_FILE="vkmssql.so.1"
  43.        ORACLE_FILE="vkorac.so.1"
  44.        SYBASE_FILE="vksyb.so.1"
  45.        SYDB_FILE="vkss.so.1"
  46.       ;;
  47.  
  48.       "SUN_OS_4_1")
  49.        OS_NAME=sunos.4.1
  50.        INFORMIX_FILE="vsifmx5.so.1"
  51.        INGRES_FILE="vsingr64.so.1"
  52.        ORACLE_FILE="vsorac.so.1"
  53.        SYBASE_FILE="vssyb.so.1"
  54.       ;;
  55.  
  56.       "AIX")
  57.        OS_NAME=ibm
  58.        INFORMIX_FILE="vsifmx7.so.1"
  59.        INGRES_FILE="vsingr64.so.1"
  60.        MSSQL_FILE="vkmssql.so.1"
  61.        ORACLE_FILE="vsorac.so.1"
  62.        SYBASE_FILE="vssyb.so.1"
  63.        SYDB_FILE="vsss.so.1"
  64.       ;;
  65.     *)
  66.         echo "$2: Not supported"
  67.         exit 1
  68.         ;;
  69.   esac
  70.  
  71. fi
  72.  
  73. # This script is called blindly by the installer. Make
  74. # sure that the bin directory is there. If not ,exit normally
  75. #
  76. if [ ! -x $IDL_DIR/bin/bin.$OS_NAME ]; then
  77.   exit 0
  78. fi
  79.  
  80. # Set the ini filename. This is platform specific
  81. INI_FILENAME=$IDL_DIR/resource/dm/$OS_NAME/odbc.ini
  82.  
  83. echo "[ODBC Data Sources]" >$INI_FILENAME
  84.  
  85. # Write the header section of the odbc.ini file
  86. if [ "$INFORMIX_FILE" != "" ]; then
  87.   echo "Informix=Visigenic Informix ">>$INI_FILENAME
  88. fi
  89. if [ "$INGRES_FILE" != "" ]; then
  90.   echo "Ingres=Visigenic Ingres 64">>$INI_FILENAME
  91. fi
  92. if [ "$MSSQL_FILE" != "" ]; then
  93.   echo "MSSQLServer=Visigenic MS SQL Server" >>$INI_FILENAME
  94. fi
  95. if [ "$ORACLE_FILE" != "" ]; then
  96.   echo "Oracle=Visigenic Oracle7">>$INI_FILENAME
  97. fi
  98. if [ "$SYBASE_FILE" != "" ]; then
  99.   echo "SybaseDBLib=Visigenic Sybase DBLib">>$INI_FILENAME
  100. fi
  101. if [ "$SYDB_FILE" != "" ]; then 
  102.   echo "Sybase=Visigenic Sybase SQL Server 10">>$INI_FILENAME
  103. fi
  104. echo "
  105.  
  106. [ODBC]
  107. Trace=0
  108. TraceFile=odbctrace.out
  109. InstallDir=$IDL_DIR/bin/bin.$OS_NAME/dm
  110. ">>$INI_FILENAME
  111.  
  112. if [ "$INFORMIX_FILE" != "" ]; then
  113.   echo "
  114. [Informix]
  115. Driver=$IDL_DIR/bin/bin.$OS_NAME/dm/drivers/$INFORMIX_FILE
  116. Description=
  117. UID=
  118. Database=
  119. NoHoldCursors=
  120. TrueCharPrecision=
  121. TxnDMLOnly=
  122. ">>$INI_FILENAME
  123. fi
  124.  
  125. if [ "$INGRES_FILE" != "" ]; then
  126.   echo "
  127. [Ingres]
  128. Driver=$IDL_DIR/bin/bin.$OS_NAME/dm/drivers/$INGRES_FILE
  129. Description=
  130. ServerName=
  131. Database=
  132. UID=
  133. ">>$INI_FILENAME
  134. fi
  135.  
  136. if [ "$ORACLE_FILE" != "" ]; then
  137.   echo "
  138. [Oracle]
  139. Driver=$IDL_DIR/bin/bin.$OS_NAME/dm/drivers/$ORACLE_FILE
  140. Description=
  141. UID=
  142. Server=
  143. BufferSize=
  144. RowLimit=
  145. SystemTable=
  146. CapitalizeCatalogArguments=
  147. NumberFloatMapping=
  148. TXN_CAPABLE=
  149. ">>$INI_FILENAME
  150. fi
  151.  
  152. if [ "$SYBASE_FILE" != "" ]; then
  153.   echo "
  154. [Sybase]
  155. Driver=$IDL_DIR/bin/bin.$OS_NAME/dm/drivers/$SYBASE_FILE
  156. Description=
  157. Server=
  158. Database=
  159. AllowQuotedIdentifiers=
  160. UID=
  161. ">>$INI_FILENAME
  162. fi
  163.  
  164. if [ "$SYDB_FILE" != "" ]; then
  165.   echo "
  166. [SybaseDBLib]
  167. Driver=$IDL_DIR/bin/bin.$OS_NAME/dm/drivers/$SYDB_FILE
  168. Description=
  169. Server=
  170. Database=
  171. Cursor_Cache=
  172. Force_Prepare=
  173. UID=
  174. ">>$INI_FILENAME
  175. fi
  176.  
  177. if [ "$MSSQL_FILE" != "" ]; then
  178.   echo "
  179. [MSSQLServer]
  180. Driver=$IDL_DIR/bin/bin.$OS_NAME/dm/drivers/$MSSQL_FILE
  181. Database=
  182. Network=
  183. Address=
  184. Description=
  185. UseProcForPrepare=
  186. UID=
  187. ">>$INI_FILENAME
  188. fi
  189.  
  190. # Ok, now we have the odbc.ini file created. Now lets build the
  191. # post install script. This script is required because some of the
  192. # odbc drivers require the use libs on the users machine. In fact
  193. # the user must build the oracle driver. Note that this process is
  194. # different on SunOS because we are using an older version of ODBC
  195. # for that platform (visigenic stopped developing on that platform).
  196.  
  197. # Set the post_install filename.
  198. POST_DIR=$IDL_DIR/bin/bin.$OS_NAME/dm
  199. POST_FILENAME=$POST_DIR/build_drivers
  200.  
  201. # Generic SN
  202. SN=00-002-0002960
  203.  
  204. echo "#!/bin/sh">$POST_FILENAME
  205.  
  206. echo "# Generated on: `date`">>$POST_FILENAME
  207. echo "
  208. #
  209. # On non SunOS Unix platforms that support the IDL DataMiner feature, this
  210. # script must be executed to insure proper installation of the dataminer
  211. # ODBC drivers. 
  212. #
  213. ">>$POST_FILENAME
  214.  
  215. if [ $2 != "SUN_OS_4_1" ]; then
  216.  
  217.   # Ok, generate commands that will build or update the driver files.
  218.   # This was taken out of the install_drv script that is supplied from
  219.   # visigenic.
  220.  
  221.   if [ "$INFORMIX_FILE" != "" ]; then
  222.     echo "
  223. # Perform Informix Post Install
  224. sh $POST_DIR/drivers/mkdrv $POST_FILENAME.log $POST_DIR $POST_DIR $INFORMIX_FILE $SN
  225.     ">>$POST_FILENAME
  226.   fi
  227.   
  228.   if [ "$INGRES_FILE" != "" ]; then
  229.     echo "
  230. # Perform Ingres Post Install
  231. sh $POST_DIR/drivers/mkdrv $POST_FILENAME.log $POST_DIR $POST_DIR $INGRES_FILE $SN
  232.     ">>$POST_FILENAME
  233.   fi
  234.   
  235.   if [ "$MSSQL_FILE" != "" ]; then
  236.     echo "
  237. # Perform MS SQL Server Post Install
  238. sh $POST_DIR/drivers/mkdrv $POST_FILENAME.log $POST_DIR $POST_DIR $MSSQL_FILE $SN
  239.     ">>$POST_FILENAME
  240.   fi
  241.   if [ "$ORACLE_FILE" != "" ]; then    
  242.     echo "
  243. # Perform Oracle Post Install
  244. sh $POST_DIR/drivers/mkdrv $POST_FILENAME.log $POST_DIR $POST_DIR $ORACLE_FILE $SN
  245.     ">>$POST_FILENAME
  246.   fi
  247.   if [ "$SYBASE_FILE" != "" ]; then
  248.     echo "
  249. # Perform Sybase Post Install
  250. sh $POST_DIR/drivers/mkdrv $POST_FILENAME.log $POST_DIR $POST_DIR $SYBASE_FILE $SN
  251.     ">>$POST_FILENAME
  252.   fi
  253.   if [ "$SYDB_FILE" != "" ]; then
  254.     echo "
  255. # Perform Sybase DB Lib Post Install
  256. sh $POST_DIR/drivers/mkdrv $POST_FILENAME.log $POST_DIR $POST_DIR $SYDB_FILE $SN
  257.     ">>$POST_FILENAME
  258.   fi  
  259.  
  260. fi
  261.  
  262. chmod 755 $POST_FILENAME
  263. exit 0
  264.